from typing import Any

from pydantic import BaseModel, Field


class ToolEntity(BaseModel):
    id: str = Field(default="", description="提供者id")
    name: str = Field(default="", description="工具名称")
    description: str = Field(default="", description="工具描述")
    url: str = Field(default="", description="工具请求地址")
    method: str = Field(default="get", description="工具请求方法")
    parameters: list[dict[str, Any]] = Field(default_factory=list)
    headers: list[dict] = Field(default_factory=list, description="API工具的请求头信息")
